Anillos de Newton


In [6]:
from IPython.display import Image
Image(filename="ImagAnillosNewton.jpg")


Out[6]:

El patrón de interferencias que aparece al reflejarse la luz entre dos superficies transparentes, una curva y otra plana, es conocido como Anillos de Newton.

El patrón consiste en un conjunto de anillos centrados en el punto de contacto de las dos superficies. Se trata de franjas de luz de igual espesor, es decir, cada anillo representa la región en la cual el espesor que hay entre las dos superficies es el mismo. El espesor de la lámina que queda encerrada entre las dos superficies aumenta más rápidamente al alejarnos del centro (punto de contacto). Por ello los anillos más alejados del centro están más juntos.

Esta técnica se emplea para evaluar la calidad de superficies ópticas, veáse como ejemplo el siguiente artículo sobre caracterización de lentes oftálmicas.


In [10]:
from IPython.display import Image
Image(filename="PaperAnillosNewton.JPG")


Out[10]:

Teoría

Para estudiar los anillos de Newton analizamos las ondas reflejadas en la lámina de espesor variable (generalmente de aire) que se forma al depositar una lente plano-convexa sobre una superficie plana, tal y como se muestra en la siguiente figura. El radio de curvatura de la lente es $R$. Según no alejamos del centro (punto de contacto) el espesor de la capa de aire aumenta. Nos quedamos a una distancia $x$ del centro. A esa distancia el espesor de la capa de aire es $e$. La onda reflejada en la cara inferior de la lente plano-convexa y la onda reflejada en la cara superior de la superficie plana interfieren. Y lo hacen como si se tratara de una lámina delgada de espesor $e$. Considerando incidencias muy cercanas a la normal, la diferencia de camino entre esas dos ondas será:

$$ \Delta = 2 e$$

y por lo tanto el desfase

$$ \delta = \frac{2 \pi}{\lambda} 2 e + \pi$$

donde hemos incluido un desfase de $\pi$ debido a las reflexiones, ya que una onda se refleja en la interfase vidrio-aire y la otra lo contrario (aire-vidrio).

El desfase entre las dos ondas depende del espesor de la capa de aire. Este espesor va aumentando al alejarnos del centro con lo cual la condición de interferencia irá igualmente variando, pasando por máximos ($\delta=2m\pi$) y mínimos $\delta=(2m+1)\pi$ de luz según nos alejemos del centro.

Justo en el centro o punto de contacto el espesor es nulo. Así que el desfase será $\pi$ el correspondiente a las reflexiones y tendremos que las ondas interfieren destructivamente. Por eso en el punto de contacto se observará un mínimo de luz.


In [4]:
from IPython.display import Image
Image(filename="esquemaAnillosNewton1.jpg")


Out[4]:

Vamos a calcular a que distancias del centro tenemos mínimos de luz, o lo que es lo mismo las posiciones de los anillos oscuros. Para ello vamos a expresar el espesor de la capa de aire $e$ en función de la distancia al centro $x$ y del radio de la lente $R$. Nos fijamos en la figura anterior en el triángulo rectángulo marcado con un patrón de rayas diagonales. La relación entre los lados del triángulo es:

$$ R^2 = x^2 + (R-e)^2 $$

Estamos considerando que la capa de aire es delgada y por tanto el espesor será mucho menor que el valor del radio de la lente $R$. Así podemos escribir $(R-e)^2 \simeq R^2 - 2 e R $, es decir, despreciar $e^2$. Así nos queda

$$ R^2 = x^2 + R^2 - 2 e R $$

y despejando el espesor de la expresión anterior obtenemos

$$ e = \frac{x^2}{2R} $$

es decir, el espesor varía de forma parabólica con la distancia al centro. Además la variación del espesor es más apreciable cuando el radio de la lente es más pequeño. Es decir, el radio de la lente va a influir en como varía el espesor de la lámina de aire y por tanto en la distribución de luz resultante.

Si empleamos el espesor anterior en el desfase entre las dos ondas obtenemos finalmente

$$ \delta = \frac{2 \pi}{\lambda} \frac{x^2}{R} + \pi $$

Distribución de los anillos oscuros

Ahora ya estamos en disposición de calcular las distancias al centro $x$ para obtener mínimos de luz ($\delta=(2m+1)\pi$)

$$ \frac{2 \pi}{\lambda} \frac{x^2}{R} + \pi = 2m\pi + \pi$$

Despejamos $x$ y obtenemos lo que llamamos los radios de los anillos oscuros

$$ x^2 = m \lambda R $$

Vemos que el cuadrado de los radios de los anillos oscuros es proporcional al radio de la lente.

VeSi se miden los radios de los anillos oscuros y se reprensta


In [1]:
from matplotlib.pyplot import *
from numpy import *
%matplotlib inline
style.use('fivethirtyeight')

###################################################################################
# PARÁMETROS. SE PUEDEN MODIFICAR SUS VALORES
###################################################################################
Lambda = 500e-9 # en metros, longitud de onda de la radiación
R = 1 # en metros, radio de curvatura de la lente plano-convexa
###################################################################################

#x = linspace(-sqrt(5*Lambda*R),sqrt(5*Lambda*R),500)
x = linspace(-0.005,0.005,500)
I1 = 1 # Consideramos irradiancias normalizadas a un cierto valor.
I2 = 1
X,Y = meshgrid(x,x)
delta = (2.0*pi/Lambda)*(X**2+Y**2)/R+pi
Itotal = I1 + I2 + 2.0*sqrt(I1*I2)*cos(delta)
figure(figsize=(14,5))
subplot(121)
pcolormesh(x*1e3,x*1e3,Itotal,cmap = 'gray',vmin=0,vmax=4); xlabel("x (mm)"); ylabel("y (mm)")
subplot(122)
plot(x*1e3,Itotal[x.shape[0]/2,:]); xlabel("x (mm)"); ylabel("Irradiancia total normalizada")


Out[1]:
<matplotlib.text.Text at 0x7f11ac7cc510>

In [2]:
import numpy as np
import matplotlib.pyplot as plt
import ipywidgets as widgets
from IPython.display import display,HTML
%matplotlib inline

In [43]:
Lambda = 5.5e-7
h0 = 0
R = 10.5
n = 1
I1 = 1
I2 = 1
x,y = np.mgrid[-100:100,-100:100]*5e-5
xcut = np.arange(-100*5e-5,100*5e-5,5e-5)
def anillos(h,R,Color):
    fig, ax = plt.subplots(1,2,figsize=(16,8))
    if(Color=='Azul (400nm)'):
        Lambda = 4e-7
    elif(Color=='Verde (550 nm)'):
        Lambda = 5.5e-7
    elif(Color=='Rojo (650 nm)'):
        Lambda = 6.5e-7
    
    espesor = (x**2 + y**2)/(2*R) + h
    delta = 4*np.pi*espesor*n/Lambda + np.pi
    Itot = I1 + I2 + 2*np.sqrt(I1*I2)*np.cos(delta)
    #x = np.sqrt(m*Lambda*r - 2*h*r)
    ax[0].imshow(Itot,cmap='copper')
    ax[1].plot(xcut*1e3,Itot[:,np.shape(Itot)[1]/2])
    ax[1].set_xlabel('Distancia al centro (mm)')
    ax[1].set_ylabel('Intensidad')
    plt.show()
    return 
#anillos(h0,13,Lambda)
lambdawidgets = widgets.Dropdown(options=['Azul (400nm)','Verde (550 nm)','Rojo (650 nm)'])
lambdawidgets.height = 30
widgets.interact(anillos,h=(0,5e-3,1e-4),R=(10,20,0.5),Color=lambdawidgets)#widgets.fixed(5.5e-7))


None

Empleando la imagen anterior vamos a medir el diámetro de los anillos oscuros. Se pueden medir directamente en la pantalla del ordenador o imprimiendo la figura en una hoja de papel. Escribir en la siguiente tabla el diámetro de los anillos oscuros en las unidades indicadas (añadir tantas filas como sean necesarias manteniendo el formato) y explicar como se han medido (pantalla del ordenador, papel).

Número del anillo Diámetro del anillo (mm)
1 37
2 51
3 63
  • Explicación del proceso

(Escribir aquí la explicación del proceso)


Estos diámetros tienen el aumento $\beta$ correspondiente al sistema óptico de medida y al tamaño de la figura en la pantalla del ordenador o en la hoja de papel. Teniendo en cuenta la escala de referencia que aparece en la figura calcular el aumento $\beta$ de los diámetros medidos (escribir el valor). Esta medida debe realizarse en las mismas condiciones que las de los diámetros.

  • $\beta$ =

Usando dicho aumento podemos obtener el radio real de los anillos oscuros.

Radio = (Diámetro / 2) / $\beta$

Escribir otra tabla con los valores finales de los radios de los anillos oscuros en las unidades indicadas.

Número Radio real (mm)
1 5.1389
2 7.0833
3 8.75

Tarea 3. Análisis de los datos. Ajuste lineal de los radios de los anillos oscuros

Empleando los radios de los anillos oscuros obtenidos en la Tarea 2 vamos a representar gráficamente el radio al cuadrado en función del número del anillo oscuro. Dicha representación debería darnos una dependencia lineal cuya pendiente es el radio de curvatura multiplicado por la longitud de onda de la luz empleada en el experimento, es decir,

pendiente = $\lambda$ R

Como hemos empleando luz blanca para realizar el experimento vamos a emplear una longitud de onda central del visible: $\lambda$=550 nm.

En la siguiente celda de código se representan los datos y se realiza el ajuste lineal para obtener el valor de la pendiente (aparece escrito en la figura). Dicho valor tendrá las unidades de los radios al cuadrado, es decir, si los radios de los anillos se introducen en mm, entonces la pendiente tendrá dimensiones de mm$^2$.


In [2]:
# MODIFICAR LOS VALORES DE LOS RADIOS DE LOS ANILLOS. LUEGO EJECUTAR
###########################################################################
%pylab inline

radio= array([ 5.1389, 7.0833, 8.75 ]) # Incluir los radios de los anillos oscuros en mm y separados por comas

# DESDE AQUÍ NO TOCAR 
##############################################################################################################################
m=linspace(1,size(radio),size(radio)) # Vector con los números de los anillos
radio2=radio*radio # Vector con los radios de los anillos al cuadrado
a,b = polyfit(m,radio2,1) # Ajuste de los datos a una recta donde a es la pendiente y b la ordenada en el origen

plot(m,radio2,'o',m,a*m+b,'-') 
xlabel('Numero del anillo');ylabel('Radio$^2$ (mm$^2$)') # Escribimos los nombres de los ejes
te = "pendiente = %f mm$^2$" % a;title(te); # Se muestra el valor de la pendiente;


Populating the interactive namespace from numpy and matplotlib

Empleando el valor de la pendiente y la longitud de onda calcular el radio de curvatura de la lente

  • $R$= (incluir las unidades)